package com.seleniti.enpareja.web.desktop.client.ui.view;

import org.ioc.commons.impl.gwt.client.ui.ViewComposite;
import org.ioc.commons.ui.features.Info;

import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Widget;
import com.seleniti.enpareja.controller.ui.view.SignUpView;
import com.seleniti.enpareja.controller.ui.view.SignUpView.Action;
import com.seleniti.enpareja.controller.ui.view.SignUpView.Event;
import com.seleniti.enpareja.controller.ui.view.SignUpView.Operation;
import com.seleniti.enpareja.controller.ui.view.SignUpView.Presenter;
import com.seleniti.enpareja.controller.ui.view.SignUpViewPresenter;
import com.seleniti.enpareja.controller.ui.widget.UserForm;
import com.seleniti.enpareja.web.desktop.client.ui.widget.InfoInlineWidget;
import com.seleniti.enpareja.web.desktop.client.ui.widget.UserFormWidget;

public class SignUpViewWidget extends EnParejaBaseView<Event, Operation, Action, Presenter> implements SignUpView {

	private static SignUpViewWidgetUiBinder uiBinder = GWT.create(SignUpViewWidgetUiBinder.class);

	interface SignUpViewWidgetUiBinder extends UiBinder<Widget, SignUpViewWidget> {
	}

	@UiField
	UserFormWidget userForm;
	
	@UiField
	InfoInlineWidget extraInfo;

	public SignUpViewWidget() {
		;
		this.presenter = new SignUpViewPresenter(this, eventbus, operationManager, actionController);
		initWidget(uiBinder.createAndBindUi(this));
	}

	@Override
	public UserForm userForm() {
		return this.userForm;
	}

	@Override
	public Info extraInfo() {
		return this.extraInfo;
	}

}
